+++ /dev/null
-From: Simon McVittie <smcv@debian.org>
-Date: Mon, 12 Oct 2020 11:42:33 +0100
-Subject: Partially revert "fontchooser: Add user filtering"
-
-Add some #if 0 to stub out more code paths that need Pango 1.47.
-
-This partially reverts commit 09604eb3eb3928429cceeeb235eb4ff3a0bd5169.
-
-Forwarded: not-needed
----
- gtk/gtkfontchooserwidget.c | 10 +++++-----
- 1 file changed, 5 insertions(+), 5 deletions(-)
-
-diff --git a/gtk/gtkfontchooserwidget.c b/gtk/gtkfontchooserwidget.c
-index 293e64e..3031cd1 100644
---- a/gtk/gtkfontchooserwidget.c
-+++ b/gtk/gtkfontchooserwidget.c
-@@ -361,7 +361,7 @@ user_filter_cb (gpointer item,
- !pango_font_family_is_monospace (family))
- return FALSE;
-
--#ifdef HAVE_PANGOFT
-+#if 0
- if (self->filter_by_language &&
- self->filter_language)
- {
-@@ -892,7 +892,7 @@ axis_free (gpointer v)
- g_free (a);
- }
-
--#ifdef HAVE_PANGOFT
-+#if 0
- static void
- select_added (GListModel *model,
- guint position,
-@@ -989,7 +989,7 @@ add_to_fontlist (GtkWidget *widget,
-
- n = gtk_slice_list_model_get_size (model);
-
--#ifdef HAVE_PANGOFT
-+#if 0
- for (i = n; i < n + 10; i++)
- {
- gpointer item = g_list_model_get_item (child_model, i);
-@@ -1035,7 +1035,7 @@ update_fontlist (GtkFontChooserWidget *self)
- g_object_unref (model);
- }
-
--#ifdef HAVE_PANGOFT
-+#if 0
- static void
- setup_lang_item (GtkSignalListItemFactory *factory,
- gpointer item,
-@@ -1166,7 +1166,7 @@ gtk_font_chooser_widget_init (GtkFontChooserWidget *self)
-
- gtk_custom_filter_set_filter_func (self->user_filter, user_filter_cb, self, NULL);
-
--#ifdef HAVE_PANGOFT
-+#if 0
- setup_language_list (self);
- #else
- gtk_widget_hide (GTK_WIDGET (self->language_button));
+++ /dev/null
-From: Simon McVittie <smcv@debian.org>
-Date: Mon, 12 Oct 2020 10:50:18 +0100
-Subject: Revert "fontchooser: Determine sample text intelligently"
-
-Debian doesn't have the Pango 1.47 development branch yet.
-
-This reverts commit 69d5dc7c9a3f704ba9d423035864382fea390d67.
-
-Forwarded: not-needed
----
- gtk/gtkfontchooserwidget.c | 137 +--------------------------------------------
- meson.build | 2 +-
- 2 files changed, 2 insertions(+), 137 deletions(-)
-
-diff --git a/gtk/gtkfontchooserwidget.c b/gtk/gtkfontchooserwidget.c
-index 254752f..293e64e 100644
---- a/gtk/gtkfontchooserwidget.c
-+++ b/gtk/gtkfontchooserwidget.c
-@@ -65,9 +65,6 @@
- #include "gtkstringsorter.h"
-
- #include <hb-ot.h>
--#if defined(HAVE_PANGOFT) && defined(HAVE_HARFBUZZ)
--#include <pango/pangofc-font.h>
--#endif
-
- #include "language-names.h"
- #include "script-names.h"
-@@ -119,7 +116,6 @@ struct _GtkFontChooserWidget
- GtkWidget *font_name_label;
- char *preview_text;
- gboolean show_preview_entry;
-- gboolean preview_text_set;
-
- GtkWidget *size_label;
- GtkWidget *size_spin;
-@@ -232,7 +228,6 @@ gtk_font_chooser_widget_set_property (GObject *object,
- break;
- case GTK_FONT_CHOOSER_PROP_PREVIEW_TEXT:
- gtk_font_chooser_widget_set_preview_text (fontchooser, g_value_get_string (value));
-- fontchooser->preview_text_set = TRUE;
- break;
- case GTK_FONT_CHOOSER_PROP_SHOW_PREVIEW_ENTRY:
- gtk_font_chooser_widget_set_show_preview_entry (fontchooser, g_value_get_boolean (value));
-@@ -545,130 +540,6 @@ resize_by_scroll_cb (GtkEventControllerScroll *controller,
- gtk_adjustment_get_step_increment (adj) * dx);
- }
-
--static void
--maybe_update_preview_text (GtkFontChooserWidget *self,
-- PangoFontFace *face,
-- PangoFontDescription *desc)
--{
--#if defined(HAVE_PANGOFT) && defined(HAVE_HARFBUZZ)
-- PangoContext *context;
-- PangoFont *font;
-- const char *sample;
--
-- /* If the user has typed text into the entry, we don't touch it */
-- if (self->preview_text_set)
-- return;
--
-- if (self->filter_by_language && self->filter_language)
-- {
-- sample = pango_language_get_sample_string (self->filter_language);
-- gtk_font_chooser_widget_set_preview_text (self, sample);
-- return;
-- }
--
-- /* We do the work only once, and cache the result on the PangoFontFace */
-- sample = (const char *)g_object_get_data (G_OBJECT (face), "gtk-sample-text");
-- if (sample)
-- {
-- gtk_font_chooser_widget_set_preview_text (self, sample);
-- return;
-- }
--
-- context = gtk_widget_get_pango_context (GTK_WIDGET (self));
-- font = pango_context_load_font (context, desc);
--
-- if (PANGO_IS_FC_FONT (font))
-- {
-- PangoLanguage **languages;
-- GHashTable *langs = NULL;
-- PangoLanguage *default_lang;
-- PangoLanguage *alt_default = NULL;
-- PangoLanguage *lang = NULL;
-- int i;
-- const char *p;
--
-- default_lang = pango_language_get_default ();
-- p = pango_language_to_string (default_lang);
--
-- /* The default language tends to be of the form en-us.
-- * Since fontconfig languages just have the language part,
-- * and we want to use direct pointer comparisons, we need
-- * an PangoLanguage for the shortened default language.
-- */
-- if (strchr (p, '-'))
-- {
-- char q[10];
-- for (i = 0; p[i] != '-' && i < 9; i++)
-- q[i] = p[i];
-- q[i] = '\0';
-- alt_default = pango_language_from_string (q);
-- }
--
-- languages = pango_fc_font_get_languages (PANGO_FC_FONT (font));
--
-- /* If the font supports the default language, just use it. */
-- for (i = 0; languages[i]; i++)
-- {
-- if (languages[i] == default_lang || languages[i] == alt_default)
-- {
-- lang = default_lang;
-- goto found;
-- }
-- }
--
-- /* Otherwise, we make a list of representative languages */
-- langs = g_hash_table_new (NULL, NULL);
--
-- for (i = 0; languages[i]; i++)
-- {
-- const PangoScript *scripts;
-- int num, j;
--
-- scripts = pango_language_get_scripts (languages[i], &num);
-- for (j = 0; j < num; j++)
-- {
-- lang = pango_script_get_sample_language (scripts[j]);
-- if (lang)
-- g_hash_table_add (langs, lang);
-- }
-- }
--
-- /* ... and compare it to the users default and preferred languages */
-- if (g_hash_table_contains (langs, default_lang) ||
-- g_hash_table_contains (langs, alt_default))
-- {
-- lang = default_lang;
-- }
-- else
-- {
-- PangoLanguage **preferred;
--
-- preferred = pango_language_get_preferred ();
-- if (preferred)
-- {
-- for (i = 0; preferred[i]; i++)
-- {
-- if (g_hash_table_contains (langs, preferred[i]))
-- {
-- lang = preferred[i];
-- break;
-- }
-- }
-- }
-- }
-- g_hash_table_unref (langs);
--
--found:
-- sample = pango_language_get_sample_string (lang);
-- gtk_font_chooser_widget_set_preview_text (self, sample);
-- g_object_set_data (G_OBJECT (face), "gtk-sample-text", (gpointer)sample);
-- }
--
-- g_object_unref (font);
--#endif
--}
--
--
- static void
- selection_changed_cb (GtkSingleSelection *selection,
- GParamSpec *pspec,
-@@ -689,11 +560,8 @@ selection_changed_cb (GtkSingleSelection *selection,
- desc = pango_font_face_describe (face);
- pango_font_description_set_variations (self->font_desc, NULL);
- gtk_font_chooser_widget_merge_font_desc (self, desc);
-- g_simple_action_set_enabled (G_SIMPLE_ACTION (self->tweak_action), TRUE);
--
-- maybe_update_preview_text (self, face, desc);
--
- pango_font_description_free (desc);
-+ g_simple_action_set_enabled (G_SIMPLE_ACTION (self->tweak_action), TRUE);
- }
- else
- {
-@@ -2374,9 +2242,6 @@ static void
- gtk_font_chooser_widget_set_preview_text (GtkFontChooserWidget *fontchooser,
- const char *text)
- {
-- if (fontchooser->preview_text == text)
-- return;
--
- g_free (fontchooser->preview_text);
- fontchooser->preview_text = g_strdup (text);
-
-diff --git a/meson.build b/meson.build
-index fa39070..b16fafb 100644
---- a/meson.build
-+++ b/meson.build
-@@ -23,7 +23,7 @@ else
- endif
-
- glib_req = '>= @0@.@1@.@2@'.format(glib_major_req, glib_minor_req, glib_micro_req)
--pango_req = '>= 1.47.0' # keep this in sync with .gitlab-ci/test-msys.sh
-+pango_req = '>= 1.45.5'
- fribidi_req = '>= 0.19.7'
- cairo_req = '>= 1.14.0'
- gdk_pixbuf_req = '>= 2.30.0'